Digital wireless transmitters, such as the radio transmitters used in the mobile stations and base stations of cellular radio systems, handle digital information in discrete units that are usually referred to as frames. In an exemplary case where the digital information to be transmitted represents a speech signal, a frame contains all information that a receiving station needs to reproduce a short time interval of speech. A typical length of such an interval is 20 milliseconds.
The bits of a frame have different importances in relation to the subjective speech quality that can be reproduced. There may be such bits or bit sequences without the correct form of which it becomes completely impossible to reproduce the short time interval of speech in a meaningful way. On the other hand the frame may also contain such bits or bit sequences which are certainly needed to completely reproduce the short time interval of speech with high fidelity, however so that an error in these bits or bit sequences only causes a small distortion to the subjective speech quality that a human listener experiences.
From prior art it is known to recognize the different importances of different bits and to provide different degrees of protection against transmission errors depending on the relative importance of the bits. FIG. 1 is a partial schematic diagram of a prior art digital transmitter where a source encoder 101 generates a source encoded bit stream. If the transmitter of FIG. 1 is used to digitize and transmit speech, the source encoder 101 is a speech encoder that implements some algorithm like linear predictive coding to convert a speech signal into a source encoded bit stream. This bit stream goes into the channel encoder 102 that introduces redundancy thereto. The purpose of channel coding is to protect the digital information against transmission errors, i.e. to enable the receiving station to reproduce the original bit values as reliably as possible and to at least detect and possibly also to correct any transmission errors that occurred within the transmission channel. An interleaving, burst forming and modulating block 103 takes the channel encoded digital information and converts it into radio frequency bursts that can be transmitter over the air.
Within the known channel encoder block 102 of FIG. 1 there is first a re-ordering entity 110 the task of which is to re-order the bits that are to constitute the contents of a frame. The order produced by entity 110 is such that has been considered as optimal regarding the degree of protection against transmission errors and depending on relative importance of the bits. In the example of FIG. 1 the re-ordering entity 110 distributes the bits of a frame into three classes according to decreasing importance: class 1a, class 1b and class 2. Of these, the bits belonging to class 1a are so important that they must be protected with a Cyclic Redundancy Check (CRC) code. A CRC calculation block 111 calculates a CRC checksum over the class 1a bits. This checksum is fed as input information into a convolutional encoding and puncturing block 112 along with the class 1a bits and the class 1b bits themselves. The convolutional encoder 112 encodes the bits input thereto with a certain convolutional code and uses puncturing, i.e. deletes certain convolutionally encoded bits according to a predetermined bit pattern, in order to produce an encoding result where the number of bits per unit time is equal to a certain predefined gross bit rate.
The order in which the convolutional encoding and puncturing is performed is typically such that the class 1a bits are encoded first, the CRC checksum bits immediately thereafter and the class 1b bits only after the CRC checksum bits. The bit range that includes the class 1a bits and CRC checksum bits is usually encoded in the convolutional encoding and puncturing block 112 so that equal error protection performance is achieved for all bit positions within that range. This is because CRC-based error detection has been found to be more effective when the error protection performance is equal for all bit positions than when some bit positions within the CRC-related bit range enjoy better protection performance than some others, such better protection being accomplished at the expense of worsening the protection performance for some other bits in that range.
The encoding result goes into the interleaving, burst forming and modulating block 103 along with the class 2 bits that were not subjected to any CRC calculation or convolutional encoding at all. Combining the CRC protected and/or convolutionally encoded bits to the non-coded class 2 bits is schematically represented in FIG. 1 as the multiplexer 113. The order in which the bits of the various parts of the frame are handled internally in block 102 is shown at the lowest part of FIG. 1: the convolutionally encoded class 1a bits 120 come first, then the convolutionally encoded CRC checksum bits 121, then the convolutionally encoded and punctured class 1b bits and then the class 2 bits. Also within each class the bits of that class are in the order that is determined by their decreasing relative importance to subjective speech quality.
FIG. 2 is a partial schematic diagram of a prior art receiver that is used to receive the transmissions coming from the transmitter of FIG. 1. Received transmissions are demodulated and decomposed from their interleaved burst format into a frame format in block 201. A channel decoder 202 removes the channel coding from each frame and forwards the channel decoded frames to a source decoder 203. The source decoder 203 is the counterpart of the source encoder 101 in the transmitter; for example regarding the transmission of speech it converts an encoded speech signal into a stream of digital samples that is ready for D/A conversion and acoustic reproduction in a loudspeaker. In order to be able to reverse the effects of channel encoding, the channel decoder 202 comprises a demultiplexer 210 that separates the uncoded class 2 bits and sends the rest of the bits into a depuncturing and Viterbi decoding block 211 for removal of the convolutional code. Other decoding methods than Viterbi decoding algorithms exist, but the wide applicability of Viterbi algorithms has made it customary to refer to the decoding of convolutional codes as Viterbi decoding. The output of the depuncturing and Viterbi decoding block 211 comprises the CRC checksum bits, the class 1a bits and the class 1b bits. Of these the two former are taken into a CRC recalculation block 212 that checks, whether the CRC checksum calculated from the received class 1a bits matches that received along them within the frame. A mismatch causes the CRC recalculation block 212 to inform the source decoder about a detected error with a so-called CRC flag. The class 1a, class 1b and class 2 bits, of which the two former have been decoded, all go into a block 213 the purpose of which is to cancel the re-ordering that was accomplished in the re-ordering entity 110 of the transmitter.
The re-ordering and channel encoding arrangements of prior art aim at making the statistical probability of a bit error at a certain bit position a monotonically increasing function of the ordinal number of the bit position within the frame. However, FIG. 3 shows that the prior art arrangement shown in FIG. 1 fails to meet this goal. The curve 301 in FIG. 3 illustrates the statistical probability of a bit error at each bit position for a speech frame of 140 bit positions that was observed when 6812 randomly selected speech frames were taken through a simulated, error-inducing radio channel. These exemplary frames comprised class 1a bits in positions 1 to 52, CRC checksum bits in positions 53 to 62 and class 1b bits in positions 63 to 140. No class 2 bits were included in the frames. FIG. 3 shows that the general trend is correct: the curve 301 shows a generally increasing probability of errors towards the end of the frame. However, the function represented by curve 301 is not monotonously increasing. There are even large local deviations from the intended behaviour of the curve, seen as distinctive peaks upwards and downwards at certain points on the right-hand half of the curve.